<html><body>
<style>

body, h1, h2, h3, div, span, p, pre, a {
  margin: 0;
  padding: 0;
  border: 0;
  font-weight: inherit;
  font-style: inherit;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
}

body {
  font-size: 13px;
  padding: 1em;
}

h1 {
  font-size: 26px;
  margin-bottom: 1em;
}

h2 {
  font-size: 24px;
  margin-bottom: 1em;
}

h3 {
  font-size: 20px;
  margin-bottom: 1em;
  margin-top: 1em;
}

pre, code {
  line-height: 1.5;
  font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace;
}

pre {
  margin-top: 0.5em;
}

h1, h2, h3, p {
  font-family: Arial, sans serif;
}

h1, h2, h3 {
  border-bottom: solid #CCC 1px;
}

.toc_element {
  margin-top: 0.5em;
}

.firstline {
  margin-left: 2 em;
}

.method  {
  margin-top: 1em;
  border: solid 1px #CCC;
  padding: 1em;
  background: #EEE;
}

.details {
  font-weight: bold;
  font-size: 14px;
}

</style>

<h1><a href="file_v1.html">Cloud Filestore API</a> . <a href="file_v1.projects.html">projects</a> . <a href="file_v1.projects.locations.html">locations</a> . <a href="file_v1.projects.locations.instances.html">instances</a></h1>
<h2>Instance Methods</h2>
<p class="toc_element">
  <code><a href="file_v1.projects.locations.instances.snapshots.html">snapshots()</a></code>
</p>
<p class="firstline">Returns the snapshots Resource.</p>

<p class="toc_element">
  <code><a href="#close">close()</a></code></p>
<p class="firstline">Close httplib2 connections.</p>
<p class="toc_element">
  <code><a href="#create">create(parent, body=None, instanceId=None, x__xgafv=None)</a></code></p>
<p class="firstline">Creates an instance. When creating from a backup, the capacity of the new instance needs to be equal to or larger than the capacity of the backup (and also equal to or larger than the minimum capacity of the tier).</p>
<p class="toc_element">
  <code><a href="#delete">delete(name, force=None, x__xgafv=None)</a></code></p>
<p class="firstline">Deletes an instance.</p>
<p class="toc_element">
  <code><a href="#get">get(name, x__xgafv=None)</a></code></p>
<p class="firstline">Gets the details of a specific instance.</p>
<p class="toc_element">
  <code><a href="#list">list(parent, filter=None, orderBy=None, pageSize=None, pageToken=None, x__xgafv=None)</a></code></p>
<p class="firstline">Lists all instances in a project for either a specified location or for all locations.</p>
<p class="toc_element">
  <code><a href="#list_next">list_next()</a></code></p>
<p class="firstline">Retrieves the next page of results.</p>
<p class="toc_element">
  <code><a href="#patch">patch(name, body=None, updateMask=None, x__xgafv=None)</a></code></p>
<p class="firstline">Updates the settings of a specific instance.</p>
<p class="toc_element">
  <code><a href="#promoteReplica">promoteReplica(name, body=None, x__xgafv=None)</a></code></p>
<p class="firstline">Promote the standby instance (replica).</p>
<p class="toc_element">
  <code><a href="#restore">restore(name, body=None, x__xgafv=None)</a></code></p>
<p class="firstline">Restores an existing instance's file share from a backup. The capacity of the instance needs to be equal to or larger than the capacity of the backup (and also equal to or larger than the minimum capacity of the tier).</p>
<p class="toc_element">
  <code><a href="#revert">revert(name, body=None, x__xgafv=None)</a></code></p>
<p class="firstline">Revert an existing instance's file system to a specified snapshot.</p>
<h3>Method Details</h3>
<div class="method">
    <code class="details" id="close">close()</code>
  <pre>Close httplib2 connections.</pre>
</div>

<div class="method">
    <code class="details" id="create">create(parent, body=None, instanceId=None, x__xgafv=None)</code>
  <pre>Creates an instance. When creating from a backup, the capacity of the new instance needs to be equal to or larger than the capacity of the backup (and also equal to or larger than the minimum capacity of the tier).

Args:
  parent: string, Required. The instance&#x27;s project and location, in the format `projects/{project_id}/locations/{location}`. In Filestore, locations map to Google Cloud zones, for example **us-west1-b**. (required)
  body: object, The request body.
    The object takes the form of:

{ # A Filestore instance.
  &quot;capacityStepSizeGb&quot;: &quot;A String&quot;, # Output only. The increase/decrease capacity step size in GB.
  &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time when the instance was created.
  &quot;customPerformanceSupported&quot;: True or False, # Output only. Indicates whether this instance supports configuring its performance. If true, the user can configure the instance&#x27;s performance by using the &#x27;performance_config&#x27; field.
  &quot;deletionProtectionEnabled&quot;: True or False, # Optional. Indicates whether the instance is protected against deletion.
  &quot;deletionProtectionReason&quot;: &quot;A String&quot;, # Optional. The reason for enabling deletion protection.
  &quot;description&quot;: &quot;A String&quot;, # The description of the instance (2048 characters or less).
  &quot;directoryServices&quot;: { # Directory Services configuration for Kerberos-based authentication. # Optional. Directory Services configuration for Kerberos-based authentication. Should only be set if protocol is &quot;NFS_V4_1&quot;.
    &quot;ldap&quot;: { # LdapConfig contains all the parameters for connecting to LDAP servers. # Configuration for LDAP servers.
      &quot;domain&quot;: &quot;A String&quot;, # Required. The LDAP domain name in the format of `my-domain.com`.
      &quot;groupsOu&quot;: &quot;A String&quot;, # Optional. The groups Organizational Unit (OU) is optional. This parameter is a hint to allow faster lookup in the LDAP namespace. In case that this parameter is not provided, Filestore instance will query the whole LDAP namespace.
      &quot;servers&quot;: [ # Required. The servers names are used for specifying the LDAP servers names. The LDAP servers names can come with two formats: 1. DNS name, for example: `ldap.example1.com`, `ldap.example2.com`. 2. IP address, for example: `10.0.0.1`, `10.0.0.2`, `10.0.0.3`. All servers names must be in the same format: either all DNS names or all IP addresses.
        &quot;A String&quot;,
      ],
      &quot;usersOu&quot;: &quot;A String&quot;, # Optional. The users Organizational Unit (OU) is optional. This parameter is a hint to allow faster lookup in the LDAP namespace. In case that this parameter is not provided, Filestore instance will query the whole LDAP namespace.
    },
  },
  &quot;etag&quot;: &quot;A String&quot;, # Server-specified ETag for the instance resource to prevent simultaneous updates from overwriting each other.
  &quot;fileShares&quot;: [ # File system shares on the instance. For this version, only a single file share is supported.
    { # File share configuration for the instance.
      &quot;capacityGb&quot;: &quot;A String&quot;, # File share capacity in gigabytes (GB). Filestore defines 1 GB as 1024^3 bytes.
      &quot;name&quot;: &quot;A String&quot;, # Required. The name of the file share. Must use 1-16 characters for the basic service tier and 1-63 characters for all other service tiers. Must use lowercase letters, numbers, or underscores `[a-z0-9_]`. Must start with a letter. Immutable.
      &quot;nfsExportOptions&quot;: [ # Nfs Export Options. There is a limit of 10 export options per file share.
        { # NFS export options specifications.
          &quot;accessMode&quot;: &quot;A String&quot;, # Either READ_ONLY, for allowing only read requests on the exported directory, or READ_WRITE, for allowing both read and write requests. The default is READ_WRITE.
          &quot;anonGid&quot;: &quot;A String&quot;, # An integer representing the anonymous group id with a default value of 65534. Anon_gid may only be set with squash_mode of ROOT_SQUASH. An error will be returned if this field is specified for other squash_mode settings.
          &quot;anonUid&quot;: &quot;A String&quot;, # An integer representing the anonymous user id with a default value of 65534. Anon_uid may only be set with squash_mode of ROOT_SQUASH. An error will be returned if this field is specified for other squash_mode settings.
          &quot;ipRanges&quot;: [ # List of either an IPv4 addresses in the format `{octet1}.{octet2}.{octet3}.{octet4}` or CIDR ranges in the format `{octet1}.{octet2}.{octet3}.{octet4}/{mask size}` which may mount the file share. Overlapping IP ranges are not allowed, both within and across NfsExportOptions. An error will be returned. The limit is 64 IP ranges/addresses for each FileShareConfig among all NfsExportOptions.
            &quot;A String&quot;,
          ],
          &quot;network&quot;: &quot;A String&quot;, # Optional. The source VPC network for ip_ranges. Required for instances using Private Service Connect, optional otherwise. If provided, must be the same network specified in the `NetworkConfig.network` field.
          &quot;squashMode&quot;: &quot;A String&quot;, # Either NO_ROOT_SQUASH, for allowing root access on the exported directory, or ROOT_SQUASH, for not allowing root access. The default is NO_ROOT_SQUASH.
        },
      ],
      &quot;sourceBackup&quot;: &quot;A String&quot;, # The resource name of the backup, in the format `projects/{project_number}/locations/{location_id}/backups/{backup_id}`, that this file share has been restored from.
      &quot;sourceBackupdrBackup&quot;: &quot;A String&quot;, # The resource name of the BackupDR backup, in the format `projects/{project_id}/locations/{location_id}/backupVaults/{backupvault_id}/dataSources/{datasource_id}/backups/{backup_id}`, TODO (b/443690479) - Remove visibility restrictions once the feature is ready
    },
  ],
  &quot;kmsKeyName&quot;: &quot;A String&quot;, # KMS key name used for data encryption.
  &quot;labels&quot;: { # Resource labels to represent user provided metadata.
    &quot;a_key&quot;: &quot;A String&quot;,
  },
  &quot;maxCapacityGb&quot;: &quot;A String&quot;, # Output only. The max capacity of the instance in GB.
  &quot;minCapacityGb&quot;: &quot;A String&quot;, # Output only. The min capacity of the instance in GB.
  &quot;name&quot;: &quot;A String&quot;, # Output only. The resource name of the instance, in the format `projects/{project}/locations/{location}/instances/{instance}`.
  &quot;networks&quot;: [ # VPC networks to which the instance is connected. For this version, only a single network is supported.
    { # Network configuration for the instance.
      &quot;connectMode&quot;: &quot;A String&quot;, # The network connect mode of the Filestore instance. If not provided, the connect mode defaults to DIRECT_PEERING.
      &quot;ipAddresses&quot;: [ # Output only. IPv4 addresses in the format `{octet1}.{octet2}.{octet3}.{octet4}` or IPv6 addresses in the format `{block1}:{block2}:{block3}:{block4}:{block5}:{block6}:{block7}:{block8}`.
        &quot;A String&quot;,
      ],
      &quot;modes&quot;: [ # Internet protocol versions for which the instance has IP addresses assigned. For this version, only MODE_IPV4 is supported.
        &quot;A String&quot;,
      ],
      &quot;network&quot;: &quot;A String&quot;, # The name of the Google Compute Engine [VPC network](https://cloud.google.com/vpc/docs/vpc) to which the instance is connected.
      &quot;pscConfig&quot;: { # Private Service Connect configuration. # Optional. Private Service Connect configuration. Should only be set when connect_mode is PRIVATE_SERVICE_CONNECT.
        &quot;endpointProject&quot;: &quot;A String&quot;, # Optional. Consumer service project in which the Private Service Connect endpoint would be set up. This is optional, and only relevant in case the network is a shared VPC. If this is not specified, the endpoint would be setup in the VPC host project.
      },
      &quot;reservedIpRange&quot;: &quot;A String&quot;, # Optional, reserved_ip_range can have one of the following two types of values. * CIDR range value when using DIRECT_PEERING connect mode. * [Allocated IP address range](https://cloud.google.com/compute/docs/ip-addresses/reserve-static-internal-ip-address) when using PRIVATE_SERVICE_ACCESS connect mode. When the name of an allocated IP address range is specified, it must be one of the ranges associated with the private service access connection. When specified as a direct CIDR value, it must be a /29 CIDR block for Basic tier, a /24 CIDR block for High Scale tier, or a /26 CIDR block for Enterprise tier in one of the [internal IP address ranges](https://www.arin.net/reference/research/statistics/address_filters/) that identifies the range of IP addresses reserved for this instance. For example, 10.0.0.0/29, 192.168.0.0/24 or 192.168.0.0/26, respectively. The range you specify can&#x27;t overlap with either existing subnets or assigned IP address ranges for other Filestore instances in the selected VPC network.
    },
  ],
  &quot;performanceConfig&quot;: { # Used for setting the performance configuration. If the user doesn&#x27;t specify PerformanceConfig, automatically provision the default performance settings as described in https://cloud.google.com/filestore/docs/performance. Larger instances will be linearly set to more IOPS. If the instance&#x27;s capacity is increased or decreased, its performance will be automatically adjusted upwards or downwards accordingly (respectively). # Optional. Used to configure performance.
    &quot;fixedIops&quot;: { # Fixed IOPS (input/output operations per second) parameters. # Choose a fixed provisioned IOPS value for the instance, which will remain constant regardless of instance capacity. Value must be a multiple of 1000. If the chosen value is outside the supported range for the instance&#x27;s capacity during instance creation, instance creation will fail with an `InvalidArgument` error. Similarly, if an instance capacity update would result in a value outside the supported range, the update will fail with an `InvalidArgument` error.
      &quot;maxIops&quot;: &quot;A String&quot;, # Required. Maximum IOPS.
    },
    &quot;iopsPerTb&quot;: { # IOPS per TB. Filestore defines TB as 1024^4 bytes (TiB). # Provision IOPS dynamically based on the capacity of the instance. Provisioned IOPS will be calculated by multiplying the capacity of the instance in TiB by the `iops_per_tb` value. For example, for a 2 TiB instance with an `iops_per_tb` value of 17000 the provisioned IOPS will be 34000. If the calculated value is outside the supported range for the instance&#x27;s capacity during instance creation, instance creation will fail with an `InvalidArgument` error. Similarly, if an instance capacity update would result in a value outside the supported range, the update will fail with an `InvalidArgument` error.
      &quot;maxIopsPerTb&quot;: &quot;A String&quot;, # Required. Maximum IOPS per TiB.
    },
  },
  &quot;performanceLimits&quot;: { # The enforced performance limits, calculated from the instance&#x27;s performance configuration. # Output only. Used for getting performance limits.
    &quot;maxIops&quot;: &quot;A String&quot;, # Output only. The max IOPS.
    &quot;maxReadIops&quot;: &quot;A String&quot;, # Output only. The max read IOPS.
    &quot;maxReadThroughputBps&quot;: &quot;A String&quot;, # Output only. The max read throughput in bytes per second.
    &quot;maxWriteIops&quot;: &quot;A String&quot;, # Output only. The max write IOPS.
    &quot;maxWriteThroughputBps&quot;: &quot;A String&quot;, # Output only. The max write throughput in bytes per second.
  },
  &quot;protocol&quot;: &quot;A String&quot;, # Immutable. The protocol indicates the access protocol for all shares in the instance. This field is immutable and it cannot be changed after the instance has been created. Default value: `NFS_V3`.
  &quot;replication&quot;: { # Replication specifications. # Optional. Replication configuration.
    &quot;replicas&quot;: [ # Optional. Replication configuration for the replica instance associated with this instance. Only a single replica is supported.
      { # Replica configuration for the instance.
        &quot;lastActiveSyncTime&quot;: &quot;A String&quot;, # Output only. The timestamp of the latest replication snapshot taken on the active instance and is already replicated safely.
        &quot;peerInstance&quot;: &quot;A String&quot;, # Optional. The peer instance.
        &quot;state&quot;: &quot;A String&quot;, # Output only. The replica state.
        &quot;stateReasons&quot;: [ # Output only. Additional information about the replication state, if available.
          &quot;A String&quot;,
        ],
        &quot;stateUpdateTime&quot;: &quot;A String&quot;, # Output only. The time when the replica state was updated.
      },
    ],
    &quot;role&quot;: &quot;A String&quot;, # Optional. The replication role.
  },
  &quot;satisfiesPzi&quot;: True or False, # Output only. Reserved for future use.
  &quot;satisfiesPzs&quot;: True or False, # Output only. Reserved for future use.
  &quot;state&quot;: &quot;A String&quot;, # Output only. The instance state.
  &quot;statusMessage&quot;: &quot;A String&quot;, # Output only. Additional information about the instance state, if available.
  &quot;suspensionReasons&quot;: [ # Output only. Field indicates all the reasons the instance is in &quot;SUSPENDED&quot; state.
    &quot;A String&quot;,
  ],
  &quot;tags&quot;: { # Optional. Input only. Immutable. Tag key-value pairs bound to this resource. Each key must be a namespaced name and each value a short name. Example: &quot;123456789012/environment&quot; : &quot;production&quot;, &quot;123456789013/costCenter&quot; : &quot;marketing&quot; See the documentation for more information: - Namespaced name: https://cloud.google.com/resource-manager/docs/tags/tags-creating-and-managing#retrieving_tag_key - Short name: https://cloud.google.com/resource-manager/docs/tags/tags-creating-and-managing#retrieving_tag_value
    &quot;a_key&quot;: &quot;A String&quot;,
  },
  &quot;tier&quot;: &quot;A String&quot;, # The service tier of the instance.
}

  instanceId: string, Required. The name of the instance to create. The name must be unique for the specified project and location.
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # This resource represents a long-running operation that is the result of a network API call.
  &quot;done&quot;: True or False, # If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.
  &quot;error&quot;: { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # The error result of the operation in case of failure or cancellation.
    &quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
    &quot;details&quot;: [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
      {
        &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
      },
    ],
    &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
  },
  &quot;metadata&quot;: { # Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
    &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
  },
  &quot;name&quot;: &quot;A String&quot;, # The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.
  &quot;response&quot;: { # The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
    &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
  },
}</pre>
</div>

<div class="method">
    <code class="details" id="delete">delete(name, force=None, x__xgafv=None)</code>
  <pre>Deletes an instance.

Args:
  name: string, Required. The instance resource name, in the format `projects/{project_id}/locations/{location}/instances/{instance_id}` (required)
  force: boolean, If set to true, all snapshots of the instance will also be deleted. (Otherwise, the request will only work if the instance has no snapshots.)
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # This resource represents a long-running operation that is the result of a network API call.
  &quot;done&quot;: True or False, # If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.
  &quot;error&quot;: { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # The error result of the operation in case of failure or cancellation.
    &quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
    &quot;details&quot;: [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
      {
        &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
      },
    ],
    &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
  },
  &quot;metadata&quot;: { # Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
    &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
  },
  &quot;name&quot;: &quot;A String&quot;, # The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.
  &quot;response&quot;: { # The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
    &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
  },
}</pre>
</div>

<div class="method">
    <code class="details" id="get">get(name, x__xgafv=None)</code>
  <pre>Gets the details of a specific instance.

Args:
  name: string, Required. The instance resource name, in the format `projects/{project_id}/locations/{location}/instances/{instance_id}`. (required)
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # A Filestore instance.
  &quot;capacityStepSizeGb&quot;: &quot;A String&quot;, # Output only. The increase/decrease capacity step size in GB.
  &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time when the instance was created.
  &quot;customPerformanceSupported&quot;: True or False, # Output only. Indicates whether this instance supports configuring its performance. If true, the user can configure the instance&#x27;s performance by using the &#x27;performance_config&#x27; field.
  &quot;deletionProtectionEnabled&quot;: True or False, # Optional. Indicates whether the instance is protected against deletion.
  &quot;deletionProtectionReason&quot;: &quot;A String&quot;, # Optional. The reason for enabling deletion protection.
  &quot;description&quot;: &quot;A String&quot;, # The description of the instance (2048 characters or less).
  &quot;directoryServices&quot;: { # Directory Services configuration for Kerberos-based authentication. # Optional. Directory Services configuration for Kerberos-based authentication. Should only be set if protocol is &quot;NFS_V4_1&quot;.
    &quot;ldap&quot;: { # LdapConfig contains all the parameters for connecting to LDAP servers. # Configuration for LDAP servers.
      &quot;domain&quot;: &quot;A String&quot;, # Required. The LDAP domain name in the format of `my-domain.com`.
      &quot;groupsOu&quot;: &quot;A String&quot;, # Optional. The groups Organizational Unit (OU) is optional. This parameter is a hint to allow faster lookup in the LDAP namespace. In case that this parameter is not provided, Filestore instance will query the whole LDAP namespace.
      &quot;servers&quot;: [ # Required. The servers names are used for specifying the LDAP servers names. The LDAP servers names can come with two formats: 1. DNS name, for example: `ldap.example1.com`, `ldap.example2.com`. 2. IP address, for example: `10.0.0.1`, `10.0.0.2`, `10.0.0.3`. All servers names must be in the same format: either all DNS names or all IP addresses.
        &quot;A String&quot;,
      ],
      &quot;usersOu&quot;: &quot;A String&quot;, # Optional. The users Organizational Unit (OU) is optional. This parameter is a hint to allow faster lookup in the LDAP namespace. In case that this parameter is not provided, Filestore instance will query the whole LDAP namespace.
    },
  },
  &quot;etag&quot;: &quot;A String&quot;, # Server-specified ETag for the instance resource to prevent simultaneous updates from overwriting each other.
  &quot;fileShares&quot;: [ # File system shares on the instance. For this version, only a single file share is supported.
    { # File share configuration for the instance.
      &quot;capacityGb&quot;: &quot;A String&quot;, # File share capacity in gigabytes (GB). Filestore defines 1 GB as 1024^3 bytes.
      &quot;name&quot;: &quot;A String&quot;, # Required. The name of the file share. Must use 1-16 characters for the basic service tier and 1-63 characters for all other service tiers. Must use lowercase letters, numbers, or underscores `[a-z0-9_]`. Must start with a letter. Immutable.
      &quot;nfsExportOptions&quot;: [ # Nfs Export Options. There is a limit of 10 export options per file share.
        { # NFS export options specifications.
          &quot;accessMode&quot;: &quot;A String&quot;, # Either READ_ONLY, for allowing only read requests on the exported directory, or READ_WRITE, for allowing both read and write requests. The default is READ_WRITE.
          &quot;anonGid&quot;: &quot;A String&quot;, # An integer representing the anonymous group id with a default value of 65534. Anon_gid may only be set with squash_mode of ROOT_SQUASH. An error will be returned if this field is specified for other squash_mode settings.
          &quot;anonUid&quot;: &quot;A String&quot;, # An integer representing the anonymous user id with a default value of 65534. Anon_uid may only be set with squash_mode of ROOT_SQUASH. An error will be returned if this field is specified for other squash_mode settings.
          &quot;ipRanges&quot;: [ # List of either an IPv4 addresses in the format `{octet1}.{octet2}.{octet3}.{octet4}` or CIDR ranges in the format `{octet1}.{octet2}.{octet3}.{octet4}/{mask size}` which may mount the file share. Overlapping IP ranges are not allowed, both within and across NfsExportOptions. An error will be returned. The limit is 64 IP ranges/addresses for each FileShareConfig among all NfsExportOptions.
            &quot;A String&quot;,
          ],
          &quot;network&quot;: &quot;A String&quot;, # Optional. The source VPC network for ip_ranges. Required for instances using Private Service Connect, optional otherwise. If provided, must be the same network specified in the `NetworkConfig.network` field.
          &quot;squashMode&quot;: &quot;A String&quot;, # Either NO_ROOT_SQUASH, for allowing root access on the exported directory, or ROOT_SQUASH, for not allowing root access. The default is NO_ROOT_SQUASH.
        },
      ],
      &quot;sourceBackup&quot;: &quot;A String&quot;, # The resource name of the backup, in the format `projects/{project_number}/locations/{location_id}/backups/{backup_id}`, that this file share has been restored from.
      &quot;sourceBackupdrBackup&quot;: &quot;A String&quot;, # The resource name of the BackupDR backup, in the format `projects/{project_id}/locations/{location_id}/backupVaults/{backupvault_id}/dataSources/{datasource_id}/backups/{backup_id}`, TODO (b/443690479) - Remove visibility restrictions once the feature is ready
    },
  ],
  &quot;kmsKeyName&quot;: &quot;A String&quot;, # KMS key name used for data encryption.
  &quot;labels&quot;: { # Resource labels to represent user provided metadata.
    &quot;a_key&quot;: &quot;A String&quot;,
  },
  &quot;maxCapacityGb&quot;: &quot;A String&quot;, # Output only. The max capacity of the instance in GB.
  &quot;minCapacityGb&quot;: &quot;A String&quot;, # Output only. The min capacity of the instance in GB.
  &quot;name&quot;: &quot;A String&quot;, # Output only. The resource name of the instance, in the format `projects/{project}/locations/{location}/instances/{instance}`.
  &quot;networks&quot;: [ # VPC networks to which the instance is connected. For this version, only a single network is supported.
    { # Network configuration for the instance.
      &quot;connectMode&quot;: &quot;A String&quot;, # The network connect mode of the Filestore instance. If not provided, the connect mode defaults to DIRECT_PEERING.
      &quot;ipAddresses&quot;: [ # Output only. IPv4 addresses in the format `{octet1}.{octet2}.{octet3}.{octet4}` or IPv6 addresses in the format `{block1}:{block2}:{block3}:{block4}:{block5}:{block6}:{block7}:{block8}`.
        &quot;A String&quot;,
      ],
      &quot;modes&quot;: [ # Internet protocol versions for which the instance has IP addresses assigned. For this version, only MODE_IPV4 is supported.
        &quot;A String&quot;,
      ],
      &quot;network&quot;: &quot;A String&quot;, # The name of the Google Compute Engine [VPC network](https://cloud.google.com/vpc/docs/vpc) to which the instance is connected.
      &quot;pscConfig&quot;: { # Private Service Connect configuration. # Optional. Private Service Connect configuration. Should only be set when connect_mode is PRIVATE_SERVICE_CONNECT.
        &quot;endpointProject&quot;: &quot;A String&quot;, # Optional. Consumer service project in which the Private Service Connect endpoint would be set up. This is optional, and only relevant in case the network is a shared VPC. If this is not specified, the endpoint would be setup in the VPC host project.
      },
      &quot;reservedIpRange&quot;: &quot;A String&quot;, # Optional, reserved_ip_range can have one of the following two types of values. * CIDR range value when using DIRECT_PEERING connect mode. * [Allocated IP address range](https://cloud.google.com/compute/docs/ip-addresses/reserve-static-internal-ip-address) when using PRIVATE_SERVICE_ACCESS connect mode. When the name of an allocated IP address range is specified, it must be one of the ranges associated with the private service access connection. When specified as a direct CIDR value, it must be a /29 CIDR block for Basic tier, a /24 CIDR block for High Scale tier, or a /26 CIDR block for Enterprise tier in one of the [internal IP address ranges](https://www.arin.net/reference/research/statistics/address_filters/) that identifies the range of IP addresses reserved for this instance. For example, 10.0.0.0/29, 192.168.0.0/24 or 192.168.0.0/26, respectively. The range you specify can&#x27;t overlap with either existing subnets or assigned IP address ranges for other Filestore instances in the selected VPC network.
    },
  ],
  &quot;performanceConfig&quot;: { # Used for setting the performance configuration. If the user doesn&#x27;t specify PerformanceConfig, automatically provision the default performance settings as described in https://cloud.google.com/filestore/docs/performance. Larger instances will be linearly set to more IOPS. If the instance&#x27;s capacity is increased or decreased, its performance will be automatically adjusted upwards or downwards accordingly (respectively). # Optional. Used to configure performance.
    &quot;fixedIops&quot;: { # Fixed IOPS (input/output operations per second) parameters. # Choose a fixed provisioned IOPS value for the instance, which will remain constant regardless of instance capacity. Value must be a multiple of 1000. If the chosen value is outside the supported range for the instance&#x27;s capacity during instance creation, instance creation will fail with an `InvalidArgument` error. Similarly, if an instance capacity update would result in a value outside the supported range, the update will fail with an `InvalidArgument` error.
      &quot;maxIops&quot;: &quot;A String&quot;, # Required. Maximum IOPS.
    },
    &quot;iopsPerTb&quot;: { # IOPS per TB. Filestore defines TB as 1024^4 bytes (TiB). # Provision IOPS dynamically based on the capacity of the instance. Provisioned IOPS will be calculated by multiplying the capacity of the instance in TiB by the `iops_per_tb` value. For example, for a 2 TiB instance with an `iops_per_tb` value of 17000 the provisioned IOPS will be 34000. If the calculated value is outside the supported range for the instance&#x27;s capacity during instance creation, instance creation will fail with an `InvalidArgument` error. Similarly, if an instance capacity update would result in a value outside the supported range, the update will fail with an `InvalidArgument` error.
      &quot;maxIopsPerTb&quot;: &quot;A String&quot;, # Required. Maximum IOPS per TiB.
    },
  },
  &quot;performanceLimits&quot;: { # The enforced performance limits, calculated from the instance&#x27;s performance configuration. # Output only. Used for getting performance limits.
    &quot;maxIops&quot;: &quot;A String&quot;, # Output only. The max IOPS.
    &quot;maxReadIops&quot;: &quot;A String&quot;, # Output only. The max read IOPS.
    &quot;maxReadThroughputBps&quot;: &quot;A String&quot;, # Output only. The max read throughput in bytes per second.
    &quot;maxWriteIops&quot;: &quot;A String&quot;, # Output only. The max write IOPS.
    &quot;maxWriteThroughputBps&quot;: &quot;A String&quot;, # Output only. The max write throughput in bytes per second.
  },
  &quot;protocol&quot;: &quot;A String&quot;, # Immutable. The protocol indicates the access protocol for all shares in the instance. This field is immutable and it cannot be changed after the instance has been created. Default value: `NFS_V3`.
  &quot;replication&quot;: { # Replication specifications. # Optional. Replication configuration.
    &quot;replicas&quot;: [ # Optional. Replication configuration for the replica instance associated with this instance. Only a single replica is supported.
      { # Replica configuration for the instance.
        &quot;lastActiveSyncTime&quot;: &quot;A String&quot;, # Output only. The timestamp of the latest replication snapshot taken on the active instance and is already replicated safely.
        &quot;peerInstance&quot;: &quot;A String&quot;, # Optional. The peer instance.
        &quot;state&quot;: &quot;A String&quot;, # Output only. The replica state.
        &quot;stateReasons&quot;: [ # Output only. Additional information about the replication state, if available.
          &quot;A String&quot;,
        ],
        &quot;stateUpdateTime&quot;: &quot;A String&quot;, # Output only. The time when the replica state was updated.
      },
    ],
    &quot;role&quot;: &quot;A String&quot;, # Optional. The replication role.
  },
  &quot;satisfiesPzi&quot;: True or False, # Output only. Reserved for future use.
  &quot;satisfiesPzs&quot;: True or False, # Output only. Reserved for future use.
  &quot;state&quot;: &quot;A String&quot;, # Output only. The instance state.
  &quot;statusMessage&quot;: &quot;A String&quot;, # Output only. Additional information about the instance state, if available.
  &quot;suspensionReasons&quot;: [ # Output only. Field indicates all the reasons the instance is in &quot;SUSPENDED&quot; state.
    &quot;A String&quot;,
  ],
  &quot;tags&quot;: { # Optional. Input only. Immutable. Tag key-value pairs bound to this resource. Each key must be a namespaced name and each value a short name. Example: &quot;123456789012/environment&quot; : &quot;production&quot;, &quot;123456789013/costCenter&quot; : &quot;marketing&quot; See the documentation for more information: - Namespaced name: https://cloud.google.com/resource-manager/docs/tags/tags-creating-and-managing#retrieving_tag_key - Short name: https://cloud.google.com/resource-manager/docs/tags/tags-creating-and-managing#retrieving_tag_value
    &quot;a_key&quot;: &quot;A String&quot;,
  },
  &quot;tier&quot;: &quot;A String&quot;, # The service tier of the instance.
}</pre>
</div>

<div class="method">
    <code class="details" id="list">list(parent, filter=None, orderBy=None, pageSize=None, pageToken=None, x__xgafv=None)</code>
  <pre>Lists all instances in a project for either a specified location or for all locations.

Args:
  parent: string, Required. The project and location for which to retrieve instance information, in the format `projects/{project_id}/locations/{location}`. In Cloud Filestore, locations map to Google Cloud zones, for example **us-west1-b**. To retrieve instance information for all locations, use &quot;-&quot; for the `{location}` value. (required)
  filter: string, List filter.
  orderBy: string, Sort results. Supported values are &quot;name&quot;, &quot;name desc&quot; or &quot;&quot; (unsorted).
  pageSize: integer, The maximum number of items to return.
  pageToken: string, The next_page_token value to use if there are additional results to retrieve for this list request.
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # ListInstancesResponse is the result of ListInstancesRequest.
  &quot;instances&quot;: [ # A list of instances in the project for the specified location. If the `{location}` value in the request is &quot;-&quot;, the response contains a list of instances from all locations. If any location is unreachable, the response will only return instances in reachable locations and the &quot;unreachable&quot; field will be populated with a list of unreachable locations.
    { # A Filestore instance.
      &quot;capacityStepSizeGb&quot;: &quot;A String&quot;, # Output only. The increase/decrease capacity step size in GB.
      &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time when the instance was created.
      &quot;customPerformanceSupported&quot;: True or False, # Output only. Indicates whether this instance supports configuring its performance. If true, the user can configure the instance&#x27;s performance by using the &#x27;performance_config&#x27; field.
      &quot;deletionProtectionEnabled&quot;: True or False, # Optional. Indicates whether the instance is protected against deletion.
      &quot;deletionProtectionReason&quot;: &quot;A String&quot;, # Optional. The reason for enabling deletion protection.
      &quot;description&quot;: &quot;A String&quot;, # The description of the instance (2048 characters or less).
      &quot;directoryServices&quot;: { # Directory Services configuration for Kerberos-based authentication. # Optional. Directory Services configuration for Kerberos-based authentication. Should only be set if protocol is &quot;NFS_V4_1&quot;.
        &quot;ldap&quot;: { # LdapConfig contains all the parameters for connecting to LDAP servers. # Configuration for LDAP servers.
          &quot;domain&quot;: &quot;A String&quot;, # Required. The LDAP domain name in the format of `my-domain.com`.
          &quot;groupsOu&quot;: &quot;A String&quot;, # Optional. The groups Organizational Unit (OU) is optional. This parameter is a hint to allow faster lookup in the LDAP namespace. In case that this parameter is not provided, Filestore instance will query the whole LDAP namespace.
          &quot;servers&quot;: [ # Required. The servers names are used for specifying the LDAP servers names. The LDAP servers names can come with two formats: 1. DNS name, for example: `ldap.example1.com`, `ldap.example2.com`. 2. IP address, for example: `10.0.0.1`, `10.0.0.2`, `10.0.0.3`. All servers names must be in the same format: either all DNS names or all IP addresses.
            &quot;A String&quot;,
          ],
          &quot;usersOu&quot;: &quot;A String&quot;, # Optional. The users Organizational Unit (OU) is optional. This parameter is a hint to allow faster lookup in the LDAP namespace. In case that this parameter is not provided, Filestore instance will query the whole LDAP namespace.
        },
      },
      &quot;etag&quot;: &quot;A String&quot;, # Server-specified ETag for the instance resource to prevent simultaneous updates from overwriting each other.
      &quot;fileShares&quot;: [ # File system shares on the instance. For this version, only a single file share is supported.
        { # File share configuration for the instance.
          &quot;capacityGb&quot;: &quot;A String&quot;, # File share capacity in gigabytes (GB). Filestore defines 1 GB as 1024^3 bytes.
          &quot;name&quot;: &quot;A String&quot;, # Required. The name of the file share. Must use 1-16 characters for the basic service tier and 1-63 characters for all other service tiers. Must use lowercase letters, numbers, or underscores `[a-z0-9_]`. Must start with a letter. Immutable.
          &quot;nfsExportOptions&quot;: [ # Nfs Export Options. There is a limit of 10 export options per file share.
            { # NFS export options specifications.
              &quot;accessMode&quot;: &quot;A String&quot;, # Either READ_ONLY, for allowing only read requests on the exported directory, or READ_WRITE, for allowing both read and write requests. The default is READ_WRITE.
              &quot;anonGid&quot;: &quot;A String&quot;, # An integer representing the anonymous group id with a default value of 65534. Anon_gid may only be set with squash_mode of ROOT_SQUASH. An error will be returned if this field is specified for other squash_mode settings.
              &quot;anonUid&quot;: &quot;A String&quot;, # An integer representing the anonymous user id with a default value of 65534. Anon_uid may only be set with squash_mode of ROOT_SQUASH. An error will be returned if this field is specified for other squash_mode settings.
              &quot;ipRanges&quot;: [ # List of either an IPv4 addresses in the format `{octet1}.{octet2}.{octet3}.{octet4}` or CIDR ranges in the format `{octet1}.{octet2}.{octet3}.{octet4}/{mask size}` which may mount the file share. Overlapping IP ranges are not allowed, both within and across NfsExportOptions. An error will be returned. The limit is 64 IP ranges/addresses for each FileShareConfig among all NfsExportOptions.
                &quot;A String&quot;,
              ],
              &quot;network&quot;: &quot;A String&quot;, # Optional. The source VPC network for ip_ranges. Required for instances using Private Service Connect, optional otherwise. If provided, must be the same network specified in the `NetworkConfig.network` field.
              &quot;squashMode&quot;: &quot;A String&quot;, # Either NO_ROOT_SQUASH, for allowing root access on the exported directory, or ROOT_SQUASH, for not allowing root access. The default is NO_ROOT_SQUASH.
            },
          ],
          &quot;sourceBackup&quot;: &quot;A String&quot;, # The resource name of the backup, in the format `projects/{project_number}/locations/{location_id}/backups/{backup_id}`, that this file share has been restored from.
          &quot;sourceBackupdrBackup&quot;: &quot;A String&quot;, # The resource name of the BackupDR backup, in the format `projects/{project_id}/locations/{location_id}/backupVaults/{backupvault_id}/dataSources/{datasource_id}/backups/{backup_id}`, TODO (b/443690479) - Remove visibility restrictions once the feature is ready
        },
      ],
      &quot;kmsKeyName&quot;: &quot;A String&quot;, # KMS key name used for data encryption.
      &quot;labels&quot;: { # Resource labels to represent user provided metadata.
        &quot;a_key&quot;: &quot;A String&quot;,
      },
      &quot;maxCapacityGb&quot;: &quot;A String&quot;, # Output only. The max capacity of the instance in GB.
      &quot;minCapacityGb&quot;: &quot;A String&quot;, # Output only. The min capacity of the instance in GB.
      &quot;name&quot;: &quot;A String&quot;, # Output only. The resource name of the instance, in the format `projects/{project}/locations/{location}/instances/{instance}`.
      &quot;networks&quot;: [ # VPC networks to which the instance is connected. For this version, only a single network is supported.
        { # Network configuration for the instance.
          &quot;connectMode&quot;: &quot;A String&quot;, # The network connect mode of the Filestore instance. If not provided, the connect mode defaults to DIRECT_PEERING.
          &quot;ipAddresses&quot;: [ # Output only. IPv4 addresses in the format `{octet1}.{octet2}.{octet3}.{octet4}` or IPv6 addresses in the format `{block1}:{block2}:{block3}:{block4}:{block5}:{block6}:{block7}:{block8}`.
            &quot;A String&quot;,
          ],
          &quot;modes&quot;: [ # Internet protocol versions for which the instance has IP addresses assigned. For this version, only MODE_IPV4 is supported.
            &quot;A String&quot;,
          ],
          &quot;network&quot;: &quot;A String&quot;, # The name of the Google Compute Engine [VPC network](https://cloud.google.com/vpc/docs/vpc) to which the instance is connected.
          &quot;pscConfig&quot;: { # Private Service Connect configuration. # Optional. Private Service Connect configuration. Should only be set when connect_mode is PRIVATE_SERVICE_CONNECT.
            &quot;endpointProject&quot;: &quot;A String&quot;, # Optional. Consumer service project in which the Private Service Connect endpoint would be set up. This is optional, and only relevant in case the network is a shared VPC. If this is not specified, the endpoint would be setup in the VPC host project.
          },
          &quot;reservedIpRange&quot;: &quot;A String&quot;, # Optional, reserved_ip_range can have one of the following two types of values. * CIDR range value when using DIRECT_PEERING connect mode. * [Allocated IP address range](https://cloud.google.com/compute/docs/ip-addresses/reserve-static-internal-ip-address) when using PRIVATE_SERVICE_ACCESS connect mode. When the name of an allocated IP address range is specified, it must be one of the ranges associated with the private service access connection. When specified as a direct CIDR value, it must be a /29 CIDR block for Basic tier, a /24 CIDR block for High Scale tier, or a /26 CIDR block for Enterprise tier in one of the [internal IP address ranges](https://www.arin.net/reference/research/statistics/address_filters/) that identifies the range of IP addresses reserved for this instance. For example, 10.0.0.0/29, 192.168.0.0/24 or 192.168.0.0/26, respectively. The range you specify can&#x27;t overlap with either existing subnets or assigned IP address ranges for other Filestore instances in the selected VPC network.
        },
      ],
      &quot;performanceConfig&quot;: { # Used for setting the performance configuration. If the user doesn&#x27;t specify PerformanceConfig, automatically provision the default performance settings as described in https://cloud.google.com/filestore/docs/performance. Larger instances will be linearly set to more IOPS. If the instance&#x27;s capacity is increased or decreased, its performance will be automatically adjusted upwards or downwards accordingly (respectively). # Optional. Used to configure performance.
        &quot;fixedIops&quot;: { # Fixed IOPS (input/output operations per second) parameters. # Choose a fixed provisioned IOPS value for the instance, which will remain constant regardless of instance capacity. Value must be a multiple of 1000. If the chosen value is outside the supported range for the instance&#x27;s capacity during instance creation, instance creation will fail with an `InvalidArgument` error. Similarly, if an instance capacity update would result in a value outside the supported range, the update will fail with an `InvalidArgument` error.
          &quot;maxIops&quot;: &quot;A String&quot;, # Required. Maximum IOPS.
        },
        &quot;iopsPerTb&quot;: { # IOPS per TB. Filestore defines TB as 1024^4 bytes (TiB). # Provision IOPS dynamically based on the capacity of the instance. Provisioned IOPS will be calculated by multiplying the capacity of the instance in TiB by the `iops_per_tb` value. For example, for a 2 TiB instance with an `iops_per_tb` value of 17000 the provisioned IOPS will be 34000. If the calculated value is outside the supported range for the instance&#x27;s capacity during instance creation, instance creation will fail with an `InvalidArgument` error. Similarly, if an instance capacity update would result in a value outside the supported range, the update will fail with an `InvalidArgument` error.
          &quot;maxIopsPerTb&quot;: &quot;A String&quot;, # Required. Maximum IOPS per TiB.
        },
      },
      &quot;performanceLimits&quot;: { # The enforced performance limits, calculated from the instance&#x27;s performance configuration. # Output only. Used for getting performance limits.
        &quot;maxIops&quot;: &quot;A String&quot;, # Output only. The max IOPS.
        &quot;maxReadIops&quot;: &quot;A String&quot;, # Output only. The max read IOPS.
        &quot;maxReadThroughputBps&quot;: &quot;A String&quot;, # Output only. The max read throughput in bytes per second.
        &quot;maxWriteIops&quot;: &quot;A String&quot;, # Output only. The max write IOPS.
        &quot;maxWriteThroughputBps&quot;: &quot;A String&quot;, # Output only. The max write throughput in bytes per second.
      },
      &quot;protocol&quot;: &quot;A String&quot;, # Immutable. The protocol indicates the access protocol for all shares in the instance. This field is immutable and it cannot be changed after the instance has been created. Default value: `NFS_V3`.
      &quot;replication&quot;: { # Replication specifications. # Optional. Replication configuration.
        &quot;replicas&quot;: [ # Optional. Replication configuration for the replica instance associated with this instance. Only a single replica is supported.
          { # Replica configuration for the instance.
            &quot;lastActiveSyncTime&quot;: &quot;A String&quot;, # Output only. The timestamp of the latest replication snapshot taken on the active instance and is already replicated safely.
            &quot;peerInstance&quot;: &quot;A String&quot;, # Optional. The peer instance.
            &quot;state&quot;: &quot;A String&quot;, # Output only. The replica state.
            &quot;stateReasons&quot;: [ # Output only. Additional information about the replication state, if available.
              &quot;A String&quot;,
            ],
            &quot;stateUpdateTime&quot;: &quot;A String&quot;, # Output only. The time when the replica state was updated.
          },
        ],
        &quot;role&quot;: &quot;A String&quot;, # Optional. The replication role.
      },
      &quot;satisfiesPzi&quot;: True or False, # Output only. Reserved for future use.
      &quot;satisfiesPzs&quot;: True or False, # Output only. Reserved for future use.
      &quot;state&quot;: &quot;A String&quot;, # Output only. The instance state.
      &quot;statusMessage&quot;: &quot;A String&quot;, # Output only. Additional information about the instance state, if available.
      &quot;suspensionReasons&quot;: [ # Output only. Field indicates all the reasons the instance is in &quot;SUSPENDED&quot; state.
        &quot;A String&quot;,
      ],
      &quot;tags&quot;: { # Optional. Input only. Immutable. Tag key-value pairs bound to this resource. Each key must be a namespaced name and each value a short name. Example: &quot;123456789012/environment&quot; : &quot;production&quot;, &quot;123456789013/costCenter&quot; : &quot;marketing&quot; See the documentation for more information: - Namespaced name: https://cloud.google.com/resource-manager/docs/tags/tags-creating-and-managing#retrieving_tag_key - Short name: https://cloud.google.com/resource-manager/docs/tags/tags-creating-and-managing#retrieving_tag_value
        &quot;a_key&quot;: &quot;A String&quot;,
      },
      &quot;tier&quot;: &quot;A String&quot;, # The service tier of the instance.
    },
  ],
  &quot;nextPageToken&quot;: &quot;A String&quot;, # The token you can use to retrieve the next page of results. Not returned if there are no more results in the list.
  &quot;unreachable&quot;: [ # Unordered list. Locations that could not be reached.
    &quot;A String&quot;,
  ],
}</pre>
</div>

<div class="method">
    <code class="details" id="list_next">list_next()</code>
  <pre>Retrieves the next page of results.

        Args:
          previous_request: The request for the previous page. (required)
          previous_response: The response from the request for the previous page. (required)

        Returns:
          A request object that you can call &#x27;execute()&#x27; on to request the next
          page. Returns None if there are no more items in the collection.
        </pre>
</div>

<div class="method">
    <code class="details" id="patch">patch(name, body=None, updateMask=None, x__xgafv=None)</code>
  <pre>Updates the settings of a specific instance.

Args:
  name: string, Output only. The resource name of the instance, in the format `projects/{project}/locations/{location}/instances/{instance}`. (required)
  body: object, The request body.
    The object takes the form of:

{ # A Filestore instance.
  &quot;capacityStepSizeGb&quot;: &quot;A String&quot;, # Output only. The increase/decrease capacity step size in GB.
  &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time when the instance was created.
  &quot;customPerformanceSupported&quot;: True or False, # Output only. Indicates whether this instance supports configuring its performance. If true, the user can configure the instance&#x27;s performance by using the &#x27;performance_config&#x27; field.
  &quot;deletionProtectionEnabled&quot;: True or False, # Optional. Indicates whether the instance is protected against deletion.
  &quot;deletionProtectionReason&quot;: &quot;A String&quot;, # Optional. The reason for enabling deletion protection.
  &quot;description&quot;: &quot;A String&quot;, # The description of the instance (2048 characters or less).
  &quot;directoryServices&quot;: { # Directory Services configuration for Kerberos-based authentication. # Optional. Directory Services configuration for Kerberos-based authentication. Should only be set if protocol is &quot;NFS_V4_1&quot;.
    &quot;ldap&quot;: { # LdapConfig contains all the parameters for connecting to LDAP servers. # Configuration for LDAP servers.
      &quot;domain&quot;: &quot;A String&quot;, # Required. The LDAP domain name in the format of `my-domain.com`.
      &quot;groupsOu&quot;: &quot;A String&quot;, # Optional. The groups Organizational Unit (OU) is optional. This parameter is a hint to allow faster lookup in the LDAP namespace. In case that this parameter is not provided, Filestore instance will query the whole LDAP namespace.
      &quot;servers&quot;: [ # Required. The servers names are used for specifying the LDAP servers names. The LDAP servers names can come with two formats: 1. DNS name, for example: `ldap.example1.com`, `ldap.example2.com`. 2. IP address, for example: `10.0.0.1`, `10.0.0.2`, `10.0.0.3`. All servers names must be in the same format: either all DNS names or all IP addresses.
        &quot;A String&quot;,
      ],
      &quot;usersOu&quot;: &quot;A String&quot;, # Optional. The users Organizational Unit (OU) is optional. This parameter is a hint to allow faster lookup in the LDAP namespace. In case that this parameter is not provided, Filestore instance will query the whole LDAP namespace.
    },
  },
  &quot;etag&quot;: &quot;A String&quot;, # Server-specified ETag for the instance resource to prevent simultaneous updates from overwriting each other.
  &quot;fileShares&quot;: [ # File system shares on the instance. For this version, only a single file share is supported.
    { # File share configuration for the instance.
      &quot;capacityGb&quot;: &quot;A String&quot;, # File share capacity in gigabytes (GB). Filestore defines 1 GB as 1024^3 bytes.
      &quot;name&quot;: &quot;A String&quot;, # Required. The name of the file share. Must use 1-16 characters for the basic service tier and 1-63 characters for all other service tiers. Must use lowercase letters, numbers, or underscores `[a-z0-9_]`. Must start with a letter. Immutable.
      &quot;nfsExportOptions&quot;: [ # Nfs Export Options. There is a limit of 10 export options per file share.
        { # NFS export options specifications.
          &quot;accessMode&quot;: &quot;A String&quot;, # Either READ_ONLY, for allowing only read requests on the exported directory, or READ_WRITE, for allowing both read and write requests. The default is READ_WRITE.
          &quot;anonGid&quot;: &quot;A String&quot;, # An integer representing the anonymous group id with a default value of 65534. Anon_gid may only be set with squash_mode of ROOT_SQUASH. An error will be returned if this field is specified for other squash_mode settings.
          &quot;anonUid&quot;: &quot;A String&quot;, # An integer representing the anonymous user id with a default value of 65534. Anon_uid may only be set with squash_mode of ROOT_SQUASH. An error will be returned if this field is specified for other squash_mode settings.
          &quot;ipRanges&quot;: [ # List of either an IPv4 addresses in the format `{octet1}.{octet2}.{octet3}.{octet4}` or CIDR ranges in the format `{octet1}.{octet2}.{octet3}.{octet4}/{mask size}` which may mount the file share. Overlapping IP ranges are not allowed, both within and across NfsExportOptions. An error will be returned. The limit is 64 IP ranges/addresses for each FileShareConfig among all NfsExportOptions.
            &quot;A String&quot;,
          ],
          &quot;network&quot;: &quot;A String&quot;, # Optional. The source VPC network for ip_ranges. Required for instances using Private Service Connect, optional otherwise. If provided, must be the same network specified in the `NetworkConfig.network` field.
          &quot;squashMode&quot;: &quot;A String&quot;, # Either NO_ROOT_SQUASH, for allowing root access on the exported directory, or ROOT_SQUASH, for not allowing root access. The default is NO_ROOT_SQUASH.
        },
      ],
      &quot;sourceBackup&quot;: &quot;A String&quot;, # The resource name of the backup, in the format `projects/{project_number}/locations/{location_id}/backups/{backup_id}`, that this file share has been restored from.
      &quot;sourceBackupdrBackup&quot;: &quot;A String&quot;, # The resource name of the BackupDR backup, in the format `projects/{project_id}/locations/{location_id}/backupVaults/{backupvault_id}/dataSources/{datasource_id}/backups/{backup_id}`, TODO (b/443690479) - Remove visibility restrictions once the feature is ready
    },
  ],
  &quot;kmsKeyName&quot;: &quot;A String&quot;, # KMS key name used for data encryption.
  &quot;labels&quot;: { # Resource labels to represent user provided metadata.
    &quot;a_key&quot;: &quot;A String&quot;,
  },
  &quot;maxCapacityGb&quot;: &quot;A String&quot;, # Output only. The max capacity of the instance in GB.
  &quot;minCapacityGb&quot;: &quot;A String&quot;, # Output only. The min capacity of the instance in GB.
  &quot;name&quot;: &quot;A String&quot;, # Output only. The resource name of the instance, in the format `projects/{project}/locations/{location}/instances/{instance}`.
  &quot;networks&quot;: [ # VPC networks to which the instance is connected. For this version, only a single network is supported.
    { # Network configuration for the instance.
      &quot;connectMode&quot;: &quot;A String&quot;, # The network connect mode of the Filestore instance. If not provided, the connect mode defaults to DIRECT_PEERING.
      &quot;ipAddresses&quot;: [ # Output only. IPv4 addresses in the format `{octet1}.{octet2}.{octet3}.{octet4}` or IPv6 addresses in the format `{block1}:{block2}:{block3}:{block4}:{block5}:{block6}:{block7}:{block8}`.
        &quot;A String&quot;,
      ],
      &quot;modes&quot;: [ # Internet protocol versions for which the instance has IP addresses assigned. For this version, only MODE_IPV4 is supported.
        &quot;A String&quot;,
      ],
      &quot;network&quot;: &quot;A String&quot;, # The name of the Google Compute Engine [VPC network](https://cloud.google.com/vpc/docs/vpc) to which the instance is connected.
      &quot;pscConfig&quot;: { # Private Service Connect configuration. # Optional. Private Service Connect configuration. Should only be set when connect_mode is PRIVATE_SERVICE_CONNECT.
        &quot;endpointProject&quot;: &quot;A String&quot;, # Optional. Consumer service project in which the Private Service Connect endpoint would be set up. This is optional, and only relevant in case the network is a shared VPC. If this is not specified, the endpoint would be setup in the VPC host project.
      },
      &quot;reservedIpRange&quot;: &quot;A String&quot;, # Optional, reserved_ip_range can have one of the following two types of values. * CIDR range value when using DIRECT_PEERING connect mode. * [Allocated IP address range](https://cloud.google.com/compute/docs/ip-addresses/reserve-static-internal-ip-address) when using PRIVATE_SERVICE_ACCESS connect mode. When the name of an allocated IP address range is specified, it must be one of the ranges associated with the private service access connection. When specified as a direct CIDR value, it must be a /29 CIDR block for Basic tier, a /24 CIDR block for High Scale tier, or a /26 CIDR block for Enterprise tier in one of the [internal IP address ranges](https://www.arin.net/reference/research/statistics/address_filters/) that identifies the range of IP addresses reserved for this instance. For example, 10.0.0.0/29, 192.168.0.0/24 or 192.168.0.0/26, respectively. The range you specify can&#x27;t overlap with either existing subnets or assigned IP address ranges for other Filestore instances in the selected VPC network.
    },
  ],
  &quot;performanceConfig&quot;: { # Used for setting the performance configuration. If the user doesn&#x27;t specify PerformanceConfig, automatically provision the default performance settings as described in https://cloud.google.com/filestore/docs/performance. Larger instances will be linearly set to more IOPS. If the instance&#x27;s capacity is increased or decreased, its performance will be automatically adjusted upwards or downwards accordingly (respectively). # Optional. Used to configure performance.
    &quot;fixedIops&quot;: { # Fixed IOPS (input/output operations per second) parameters. # Choose a fixed provisioned IOPS value for the instance, which will remain constant regardless of instance capacity. Value must be a multiple of 1000. If the chosen value is outside the supported range for the instance&#x27;s capacity during instance creation, instance creation will fail with an `InvalidArgument` error. Similarly, if an instance capacity update would result in a value outside the supported range, the update will fail with an `InvalidArgument` error.
      &quot;maxIops&quot;: &quot;A String&quot;, # Required. Maximum IOPS.
    },
    &quot;iopsPerTb&quot;: { # IOPS per TB. Filestore defines TB as 1024^4 bytes (TiB). # Provision IOPS dynamically based on the capacity of the instance. Provisioned IOPS will be calculated by multiplying the capacity of the instance in TiB by the `iops_per_tb` value. For example, for a 2 TiB instance with an `iops_per_tb` value of 17000 the provisioned IOPS will be 34000. If the calculated value is outside the supported range for the instance&#x27;s capacity during instance creation, instance creation will fail with an `InvalidArgument` error. Similarly, if an instance capacity update would result in a value outside the supported range, the update will fail with an `InvalidArgument` error.
      &quot;maxIopsPerTb&quot;: &quot;A String&quot;, # Required. Maximum IOPS per TiB.
    },
  },
  &quot;performanceLimits&quot;: { # The enforced performance limits, calculated from the instance&#x27;s performance configuration. # Output only. Used for getting performance limits.
    &quot;maxIops&quot;: &quot;A String&quot;, # Output only. The max IOPS.
    &quot;maxReadIops&quot;: &quot;A String&quot;, # Output only. The max read IOPS.
    &quot;maxReadThroughputBps&quot;: &quot;A String&quot;, # Output only. The max read throughput in bytes per second.
    &quot;maxWriteIops&quot;: &quot;A String&quot;, # Output only. The max write IOPS.
    &quot;maxWriteThroughputBps&quot;: &quot;A String&quot;, # Output only. The max write throughput in bytes per second.
  },
  &quot;protocol&quot;: &quot;A String&quot;, # Immutable. The protocol indicates the access protocol for all shares in the instance. This field is immutable and it cannot be changed after the instance has been created. Default value: `NFS_V3`.
  &quot;replication&quot;: { # Replication specifications. # Optional. Replication configuration.
    &quot;replicas&quot;: [ # Optional. Replication configuration for the replica instance associated with this instance. Only a single replica is supported.
      { # Replica configuration for the instance.
        &quot;lastActiveSyncTime&quot;: &quot;A String&quot;, # Output only. The timestamp of the latest replication snapshot taken on the active instance and is already replicated safely.
        &quot;peerInstance&quot;: &quot;A String&quot;, # Optional. The peer instance.
        &quot;state&quot;: &quot;A String&quot;, # Output only. The replica state.
        &quot;stateReasons&quot;: [ # Output only. Additional information about the replication state, if available.
          &quot;A String&quot;,
        ],
        &quot;stateUpdateTime&quot;: &quot;A String&quot;, # Output only. The time when the replica state was updated.
      },
    ],
    &quot;role&quot;: &quot;A String&quot;, # Optional. The replication role.
  },
  &quot;satisfiesPzi&quot;: True or False, # Output only. Reserved for future use.
  &quot;satisfiesPzs&quot;: True or False, # Output only. Reserved for future use.
  &quot;state&quot;: &quot;A String&quot;, # Output only. The instance state.
  &quot;statusMessage&quot;: &quot;A String&quot;, # Output only. Additional information about the instance state, if available.
  &quot;suspensionReasons&quot;: [ # Output only. Field indicates all the reasons the instance is in &quot;SUSPENDED&quot; state.
    &quot;A String&quot;,
  ],
  &quot;tags&quot;: { # Optional. Input only. Immutable. Tag key-value pairs bound to this resource. Each key must be a namespaced name and each value a short name. Example: &quot;123456789012/environment&quot; : &quot;production&quot;, &quot;123456789013/costCenter&quot; : &quot;marketing&quot; See the documentation for more information: - Namespaced name: https://cloud.google.com/resource-manager/docs/tags/tags-creating-and-managing#retrieving_tag_key - Short name: https://cloud.google.com/resource-manager/docs/tags/tags-creating-and-managing#retrieving_tag_value
    &quot;a_key&quot;: &quot;A String&quot;,
  },
  &quot;tier&quot;: &quot;A String&quot;, # The service tier of the instance.
}

  updateMask: string, Mask of fields to update. At least one path must be supplied in this field. The elements of the repeated paths field may only include these fields: * &quot;description&quot; * &quot;file_shares&quot; * &quot;labels&quot; * &quot;performance_config&quot; * &quot;deletion_protection_enabled&quot; * &quot;deletion_protection_reason&quot;
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # This resource represents a long-running operation that is the result of a network API call.
  &quot;done&quot;: True or False, # If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.
  &quot;error&quot;: { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # The error result of the operation in case of failure or cancellation.
    &quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
    &quot;details&quot;: [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
      {
        &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
      },
    ],
    &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
  },
  &quot;metadata&quot;: { # Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
    &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
  },
  &quot;name&quot;: &quot;A String&quot;, # The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.
  &quot;response&quot;: { # The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
    &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
  },
}</pre>
</div>

<div class="method">
    <code class="details" id="promoteReplica">promoteReplica(name, body=None, x__xgafv=None)</code>
  <pre>Promote the standby instance (replica).

Args:
  name: string, Required. The resource name of the instance, in the format `projects/{project_id}/locations/{location_id}/instances/{instance_id}`. (required)
  body: object, The request body.
    The object takes the form of:

{ # PromoteReplicaRequest promotes a Filestore standby instance (replica).
  &quot;peerInstance&quot;: &quot;A String&quot;, # Optional. The resource name of the peer instance to promote, in the format `projects/{project_id}/locations/{location_id}/instances/{instance_id}`. The peer instance is required if the operation is called on an active instance.
}

  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # This resource represents a long-running operation that is the result of a network API call.
  &quot;done&quot;: True or False, # If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.
  &quot;error&quot;: { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # The error result of the operation in case of failure or cancellation.
    &quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
    &quot;details&quot;: [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
      {
        &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
      },
    ],
    &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
  },
  &quot;metadata&quot;: { # Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
    &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
  },
  &quot;name&quot;: &quot;A String&quot;, # The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.
  &quot;response&quot;: { # The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
    &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
  },
}</pre>
</div>

<div class="method">
    <code class="details" id="restore">restore(name, body=None, x__xgafv=None)</code>
  <pre>Restores an existing instance&#x27;s file share from a backup. The capacity of the instance needs to be equal to or larger than the capacity of the backup (and also equal to or larger than the minimum capacity of the tier).

Args:
  name: string, Required. The resource name of the instance, in the format `projects/{project_number}/locations/{location_id}/instances/{instance_id}`. (required)
  body: object, The request body.
    The object takes the form of:

{ # RestoreInstanceRequest restores an existing instance&#x27;s file share from a backup.
  &quot;fileShare&quot;: &quot;A String&quot;, # Required. Name of the file share in the Filestore instance that the backup is being restored to.
  &quot;sourceBackup&quot;: &quot;A String&quot;, # The resource name of the backup, in the format `projects/{project_number}/locations/{location_id}/backups/{backup_id}`.
}

  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # This resource represents a long-running operation that is the result of a network API call.
  &quot;done&quot;: True or False, # If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.
  &quot;error&quot;: { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # The error result of the operation in case of failure or cancellation.
    &quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
    &quot;details&quot;: [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
      {
        &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
      },
    ],
    &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
  },
  &quot;metadata&quot;: { # Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
    &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
  },
  &quot;name&quot;: &quot;A String&quot;, # The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.
  &quot;response&quot;: { # The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
    &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
  },
}</pre>
</div>

<div class="method">
    <code class="details" id="revert">revert(name, body=None, x__xgafv=None)</code>
  <pre>Revert an existing instance&#x27;s file system to a specified snapshot.

Args:
  name: string, Required. The resource name of the instance, in the format `projects/{project_id}/locations/{location_id}/instances/{instance_id}`. (required)
  body: object, The request body.
    The object takes the form of:

{ # RevertInstanceRequest reverts the given instance&#x27;s file share to the specified snapshot.
  &quot;targetSnapshotId&quot;: &quot;A String&quot;, # Required. The snapshot resource ID, in the format &#x27;my-snapshot&#x27;, where the specified ID is the {snapshot_id} of the fully qualified name like `projects/{project_id}/locations/{location_id}/instances/{instance_id}/snapshots/{snapshot_id}`
}

  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # This resource represents a long-running operation that is the result of a network API call.
  &quot;done&quot;: True or False, # If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.
  &quot;error&quot;: { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # The error result of the operation in case of failure or cancellation.
    &quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
    &quot;details&quot;: [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
      {
        &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
      },
    ],
    &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
  },
  &quot;metadata&quot;: { # Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
    &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
  },
  &quot;name&quot;: &quot;A String&quot;, # The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.
  &quot;response&quot;: { # The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
    &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
  },
}</pre>
</div>

</body></html>